Method and apparatus for neighborhood discovery across disparate point-to-point networks

ABSTRACT

A method or apparatus in an exemplary embodiment supports first and second layer network nodes that may be configured to communicate with each other via a communications path. In embodiments a first network node communicates via a second network node across a layer 2 network to send data. The first network node is typically on a different link layer protocol than the second network node receiving the data. Thus, the first and second layer network nodes, having different link layer protocols, may communicate with each other. Accordingly, through use of embodiments of this invention, Neighbor Discovery (ND) is possible in a network, such as an IPv6 network, that has protocols incompatible with each other.

RELATED APPLICATION(S)

This application claims the benefit of U.S. Provisional Application No.60/786,893, filed on Mar. 28, 2006. The entire teachings of the aboveapplication are incorporated herein by reference.

BACKGROUND OF THE INVENTION

The Internet today is growing rapidly. Due to this rapid growth,Internet Protocol Version 4 (IPv4) is beginning to have problems, suchas a growing shortage of IPv4 addresses. To combat these types ofproblems in IPv4, Internet Protocol Version 6 (IPv6) can be used.

SUMMARY OF THE INVENTION

A method or corresponding apparatus in an exemplary embodiment of thepresent invention supports communications between network nodes usingdifferent communications protocols, such as supporting communicationsfor IPv6 network nodes using different communications protocols (e.g.,Frame Relay and Ethernet) in a layer 2 network. First and second layer B(e.g., layer 2) switch network nodes may be configured to communicatewith each other via a communications path. A first layer A (e.g., layer3) network node may be configured to communicate with a second layer Anetwork node, where each layer A network node may communicate locallywith respective layer B network nodes using different link layerprotocols. Further, a first or second discovery unit may be configuredto operate in connection with respective first and second layer Bnetwork nodes to determine respective unique identifiers associated withthe layer A network nodes. In addition to determining respective uniqueidentifiers, the first or second discovery units may also be configuredto exchange the unique identifiers with each other. The first or seconddiscovery unit may also provide the unique identifier of the distallayer A network node to the respective local layer A network nodes.

BRIEF DESCRIPTION OF THE DRAWINGS

The foregoing will be apparent from the following more particulardescription of example embodiments of the invention, as illustrated inthe accompanying drawings in which like reference characters refer tothe same parts throughout the different views. The drawings are notnecessarily to scale, emphasis instead being placed upon illustratingembodiments of the present invention.

FIG. 1 is a network diagram of a network depicting network nodescommunicating with each other using an example embodiment of the presentinvention;

FIG. 2A is a network diagram of a network transmitting networkinformation using an embodiment of the present invention;

FIG. 2B shows a detailed diagram of how processing of a Provider Edge(PE) router determines unique identifiers of a network node;

FIG. 3 is a network diagram of a network depicting networkcommunications via layer 3 protocol(s);

FIG. 4 is a flow diagram of an example technique of communicatingbetween network nodes according to an embodiment of the presentinvention; and

FIG. 5 is flow diagram corresponding to communicating between networknodes.

DETAILED DESCRIPTION OF THE INVENTION

A description of example embodiments of the invention follows.

In an Internet Protocol Version 6 (IPv6) protocol, Neighbor Discovery(ND) is incompatible during communications between network nodesinterconnected using a switched layer 2 network. For example, ND doesnot allow a network node using an Ethernet link to connect with a secondrouter using a Frame Relay (FR) link. Therefore, there is a need in theindustry to provide a way to connect network nodes, operating ondifferent link layers, using ND of the IPv6 protocol.

A method or corresponding apparatus in an exemplary embodiment of thepresent invention supports communications between network nodes usingdifferent communications protocols, such as supporting communicationsfor IPv6 network nodes using different communications protocols (e.g.,Frame Relay and Ethernet) in a layer 2 network. First and second layer B(e.g., layer 2) switch network nodes may be configured to communicatewith each other via a communications path. A first layer A (e.g., layer3) network node may be configured to communicate with a second layer Anetwork node, where each layer A network node may communicate locallywith respective layer B network nodes using different link layerprotocols. These layer B network nodes may be on a point to pointnetwork and/or a switched network. Further, the layer B network nodesmay operate over Ethernet, VLAN, Frame Relay, or ATM.

A first or second discovery unit may be configured to operate inconnection with respective first and second layer B network nodes todetermine respective unique identifiers associated with the layer Anetwork nodes. Using the unique identifiers allows a first or seconddiscovery unit communicates with a layer A network node. In addition todetermining respective unique identifiers, the first or second discoveryunits may also be configured to exchange the unique identifiers witheach other. The first or second discovery unit may also provide theunique identifier of the distal layer A network node to the respectivelocal layer A network nodes. Further, the first or second discoveryunits may include an interception unit to intercept a message; and thefirst or second discovery units are configured to send a response basedon the message.

FIG. 1 is a network diagram of a network 100 depicting multiple networknodes communicating with each other. In this network 100, a CustomerEquipment (CE) server 105 is shown within an IPv6 Layer 3 protocol 110.CE 105 may be connected to a Provider Edge (PE) router 110 where the PEis communicating via a link layer protocol A 115.

A Customer Equipment (CE) server 140 is shown within an IPv6 Layer 3protocol 145. The CE 140 may be connected to a Provider Edge (PE) router130, where the PE 130 is communicating via a link layer protocol B 135.Since the CE servers 105 and 140 are operating on different link layerprotocols, the CE servers 105 and 140 are not able to communicate. Toovercome this problem, the CE server 105 may send data 108 to the PErouter 110 on link layer protocol A (e.g., Frame Relay). In turn, the PErouter 110 sends data 108 over a layer 2 switch network 125 to the PErouter 130. The PE router 130, operating on a link layer protocol B 135(e.g., Ethernet), receives data 108. The PE router 130 recognizes thedata 108 even though the data 108 is transmitted from a different linklayer. The PE router 130, compatible with the CE server 140, transmitsthe data 108 to the CE server 140 successfully. In this way, the data108 is sent across a network by the PE router 110 and the PE router 130using different link layer protocols.

FIG. 2A is a network diagram 200 illustrating network nodescommunication over different link layer protocols. In this network 200,two CE servers, the CE server 205 and the CE server 235, are connectedusing IP layer 2 interworking circuit (not shown). Each CE may beconnected to a respective PE 220 and 230. An interface from CE server205 to a PE router 220 may use Frame-Relay where an interface from theCE server 235 to the PE router 230 may use Ethernet. The CE server 205and the CE server 235 each have two site-local addresses assigned totheir interface. That is, address A 207 is assigned for site-1 andaddress B 208 is assigned for a site-2 on the CE server 205. Similarly,an address X 231 is assigned for site-1 and address Y 233 may beassigned for site-2 on the CE server 235.

An application, such as a routing protocol on the CE server 205, maydiscover address Y 233 (site-2 on the CE server 235) and plan toestablish a session with address Y 233. Likewise, the CE server 235 maydiscover (i) address A 207 (site-1 on the CE server 205) and (ii) asource address 210 on the CE server 205 for destination address Y 212,which is also address A 207. In order for the CE server 205 or the CEserver 235 to establish a session, the PE router 230 discovers address Y235 of the CE server 235. However, if CE 235 sends an ND Solicitationfor address A 207, address X 231 is used as the source address (notshown) of the Solicitation message. Therefore, address X 231 belongs tothe same site (site-1) as address A 207.

Referring now to the PE router 230, the PE router 230 uses ND messagesto discover the CE server's 235 addresses. If no ND message occurs, thePE router 230 may not discover address Y 233 without communication tothe site-2 addresses from the CE server 235. This may result in a failedsession for both the CE server 205 and the CE server 235.

In order to avoid these kinds of situations when dynamic learning isused on Ethernet/VLAN interfaces, either the CE server 205 or 235 mayuse the same Interface-Id for all of its IPv6 addresses on the interfaceso that valid addresses are learned though the use of ICMPv6 RouterDiscovery Solicitation or Advertisement messages. Another alternative isto statically configure each CE address on each PE.

The above example embodiment is not only applicable to interfaces of ATMor Frame-Relay type, but many interfaces. This is the case because aCE's Advertisement response to an InvND Solicitation message from the PEcontains all the IPv6 addresses of the interface in Target Address List.Thus, the PE may learn all the IPv6 addresses of the CE's attachinginterface, even if the interface is different.

FIG. 2B shows a detailed diagram of how processing of a Provider Edge(PE) router 220 determines unique identifiers of a network node 278. Tobegin, an address 255, received from an originating node (not shown), ispassed through an interface 250 to a Discovery Unit (DU) 260. In turn,the DU 260 sends the local unique identifiers 265 to an Exchange Unit(EU) 270. Next, the EU 270 sends the local unique identifiers 265 to thenetwork node 278 (e.g., a second PE router) to exchange uniqueidentifiers. That is, the network node 278, upon receipt of the localunique identifiers 265, returns remote unique identifiers 275 to the EU270. Upon receiving the remote unique identifiers 275, the EU 270 sendsthe remote unique identifiers 275 to a Reporting Unit (RU) 280. The RU280 sends the remote unique identifiers 275 through the interface 250 tothe originating node (not shown). While obtaining the remote uniqueidentifiers 275, a message (not shown) may be received by the EU 270.Upon receiving the message, the message may be intercepted by anInterception Unit (IU) 285. Further, if the intercepted message requiresa response, the IU 285 will provide an appropriate response. It isuseful to note that intercepting a message and sending a requiredresponse may be performed at any time (e.g., upon receiving a message).Moreover, although units are illustrated in FIG. 2B (among others) as apath between the DU 260, EU 270, RU 280, and IU 285, in otherembodiments, such as a hardware, firmware, or software embodimentperforming the tasks of both the DU 260, EU 270, RU 280, and IU 285there may not be a specific physical or logical path.

FIG. 3 is a network diagram 300 illustrating network nodes communicatingover more than one different link layer protocols. In this network 300,three CE servers, the CE servers 305, 340, and 345, may be connectedusing IP layer 2 interworking cross-connect circuits (CC) 310, 320, 330,355, 360, and 365. Each CE server may be connected to a respective PErouter 315 and 325. An interface from the CE server 305 to the PE router315 may use Ethernet where the interface from the CE server 340 to thePE router 325 may use Frame Relay and the interface from the CE server345 to the PE router 325 may use ATM. With each CE server having adifferent interface, the PE router 315 and the PE router 325 create arespective cross connect mapping 370 and 375. These cross connectmappings 370 and 375 allow a local CE server such as the CE server 305,to communicate with a remote CE server such as the CE server 340. Forexample, the CE server 305 may use the CC 310 to connect to the PErouter 315. In turn, the PE router 315 uses the CC 320 to connect to thePE router 325. In this case, the PE router 325 may look to the crossconnect mapping 375 to determine the local IP address of the CE server235. Since the PE router 325 knows the location of the CE server 340,the CE server 305 can communicate with the CE server 340 regardless ofhaving different link layer protocols. It is useful to note that similarcommunications can be performed from the CE server 345 using the CC 355,360, and 365.

FIG. 4 is a flow diagram 400 illustrating network nodes communicatingover different link layer protocols. After beginning, the processcommunicates with a first layer B network node such as a switchednetwork node, from a second layer B (switched) network node (405), aswitched network node. Then, a first layer A network node communicateswith a second layer A network node (410). Next, a first or seconddiscovery unit determines respective unique identifiers associated withthe layer A network nodes (415). After determining the respective uniqueidentifiers, the first and second discovery units exchange the uniqueidentifiers with each other (420). Finally, the discovery units providethe unique identifiers of a distal layer A network node to respectivelocal layer A network node (425).

FIG. 5 is a flow diagram 500 depicting network nodes communicating overdifferent link layer protocols and intercepting network messages. Afterbeginning, the process communicates with a first layer B network node,such as a switched network node, from a second layer B (switched)network node (505). Then a first layer A network node communicates witha second layer A network node (510). Next, a first or second discoveryunit determines respective unique identifiers associated with the layerA network nodes (515). After determining the respective uniqueidentifiers, the first and second discovery units exchange the uniqueidentifiers with each other (520). The discovery units then provide theunique identifiers of a distal layer A network node to respective locallayer A network nodes (525). While obtaining the unique identifiers, thefirst or second discovery unit may also intercept a network message(530). If the network message requires a response, the first or seconddiscovery unit may send an appropriate response (535). It is useful tonote intercepting a network message (530) and sending a requiredresponse (535) may be performed at any time (527).

EXAMPLE Determining IPv6 Address(es) of a CE

IPv6 is a standard use to communicate between network nodes. IPv6standards allow an IPv6 node to have multiple unicast addresses on thesame interface. All these addresses can be of different scope (e.g.,link-local, site-local, or global). Therefore, an IPv6 router may haveone link-local address, one or more site-local addresses, or one or moreglobal addresses on the same interface. In addition, an IPv6 router mayalso have one or more anycast addresses configured on an interface.

In an IPv4 implementation, there are two ways a PE can become aware ofthe IPv4 address on the attaching interface of the CE device:

(1) Static configuration

(2) Dynamic learning/gleaning.

However, in an IPv6 protocol, there are several types of IPv6 addresses(e.g., anycast and global addresses beginning with binary 000) thatpresent difficulties for dynamic learning by a PE. If such addresses areconfigured on the attaching interface of a CE, the PE may not learn themdynamically, and static configuration of those addresses may be the onlyalternative to ensure proper operation of the IP layer 2 interworkingcircuit. In order to allow the static configuration of such addressesand dynamic learning/gleaning of the rest, a mixed configuration mode issupported for IPv6 addresses. In one embodiment of the presentinvention, three configuration modes are allowed. These configurationmodes are static, dynamic, and mixed.

In a static configuration, the user configures all IPv6 addresses of theCE device's interface for proper operation of the IP layer 2interworking circuit. If an address is not configured, but issubsequently discovered in the process of proxying, the followingoccurs: (1) the circuit is set operationally down with a reason of‘Configured Address Mismatch’ if one IPv6 static address is configuredon the PE; and (2) the address is ignored if more than one IPv6 addressis configured on the PE. In a dynamic configuration, no address is astatic configuration. Addresses are dynamically learned by a PE. In amixed mode, some addresses are static configurations while the remainingaddresses are learned dynamically.

Dynamic Learning of CE's Address(es)

Dynamic learning is used in the absence of a static configuration ofCE's IPv6 addresses. Some of many ways of determining the IPv6 addressesof an interface are:

-   -   (1) Using PE initiated ICMPv6 Router Discovery Solicitation and        Advertisement messages.    -   (2) Intercepting CE generated ICMPv6 Neighbor/Inverse-Neighbor        Discovery Solicitation and Advertisement messages.    -   (3) Intercepting any other CE generated IPv6 multicast messages        when the circuit is initially down and the PE has not learned        any of CE's addresses. The destination IPv6 address of the        message is from the “non-forwardable” multicast address space.        The CE's address is then obtained directly from the source        address field of the IPv6 header. Obtaining the source address        directly is used when the circuit is operationally down and the        PE has not determined any of the addresses of CE. Therefore, a        source address field is used to learn a first address (in no        reference to any specific/particular address) of the CE.

Based on the current implementation for IPv4 CE devices, the operationalstate of a circuit is down until at least one IPv6 address of both thelocal and remote CE is known. Since the PE has no knowledge of thenumber of IPv6 addresses configured on the interface of the CE device,it cannot wait until all those addresses are determined for the circuitto be operational. Therefore, IPv6 addresses are determined. DeterminingIPv6 addresses is performed by sending ND Solicitation messages to a CEfor those addresses that are determined (this is referred to herein as“Unreachability detection”). This is performed on a per IP layer 2interworking circuit endpoint basis, such as enable/disable and timeoutin seconds.

ICMPv6 Router Discovery

After establishing connectivity to an attached CE device (administrativestate of a circuit is enabled, physical operation status is UP/layer 2interface UP, Data Link Connection Identifier (DLCI) UP, etc.), and thePE sends IPv6 Router Discovery Solicitation ND messages (the use of suchmessages is configurable on a per-circuit endpoint basis). In responseto the PE message(s), the CE device sends an IPv6 Router DiscoveryAdvertisement ND message. A flag is defined (e.g.,AdvSendAdvertisements) and maintained per interface on the CE andconfigured by a user. This flag indicates whether or not the CE shouldrespond to Router Discovery Solicitation ND messages. In addition, asource address field in IPv6 header of the Advertisement message is setto the link-local address of the CE device. Further, this Advertisementmessage contains a list of CE prefixes that are on-link and/or used foraddress auto-configuration.

All IPv6 addresses, except for global addresses beginning with binary000, have a 64-bit prefix and a 64-bit Interface-Id. Since IPv6addresses, except for the global address(es) beginning with binary 000,are made up of the same 64-bit Interface-Id, then the Interface-Id isobtained from the link-local address of the CE. The remaining addressesare constructed by concatenating a prefix (from the prefix-list in theAdvertisement message) and the Interface-Id. After constructing theaddresses, ND Solicitation message is sent by the PE for each of theaddresses. An address is found invalid if a response is not obtainedfrom the CE. In this way, the PE learns each IPv6 address of the CE. Onthe other hand, if the PE does not receive an ND Advertisement messagein response to an ND Solicitation message, those addresses are notvalid. If the addresses are not valid, the PE relies on other processesto learn the CE addresses. Example processes include ICMPv6, NeighborDiscovery, and static configuration.

ICMPv6 Neighbor/Inverse-Neighbor Discovery Messages

Neighbor Discovery (ND) Solicitation and Advertisement messages are usedto find the link-layer address of a node by using the IPv6 address. Onthe other hand, Inverse Neighbor Discovery (InvND) Solicitation andAdvertisement messages serve the opposite purpose on ATM and Frame-Relaylinks; that is, IPv6 address(es) are found for a node by using itslink-layer address.

In one embodiment of the present invention, an IPv6 address assigned toan interface of a CE is learned by a PE by performing the following:

-   -   (1) the CE sends an ND/InvND Solicitation message. After sending        the ND Solicitation message, a source address field in an IPv6        header is checked to determine if an IPv6 address has been        assigned to the interface of the CE. If the address is all        zeros, the IPv6 address is considered unspecified. If, on the        other hand, the IPv6 address is specified, and the specified        address is assigned to the interface from which the message is        sent. Similarly, in the case of an InvND Solicitation message,        the source address field in the IPv6 header contains an IPv6        address assigned to the CE's attaching interface; or    -   (2) the CE sends an Unsolicited ND Advertisement or a Solicited        InvND Advertisement message. If an Unsolicited ND Advertisement        message is sent, the IPv6 address is obtained from the source        address field of the IPv6 header and/or from a Target Address        field in the ND message. In case of Solicited InvND        Advertisement message, the Target Address List in the InvND        message contains the list of IPv6 addresses assigned to the        attaching interface of the CE.

Anycast Addresses

An IPv6 anycast address is defined as an address that is assigned tomore than one interface typically belonging to different nodes, with aproperty that a packet sent to an anycast address is delivered to thenearest interface with that address. Anycast addresses are allocatedfrom the unicast address space and are syntactically indistinguishablefrom unicast addresses.

Anycast address prefixes are not included in ICMPv6 Router DiscoveryAdvertisement messages. However, there is a predefined Subnet-Routeranycast address which is defined to be same as the subnet prefix. Allrouters are required to support the Subnet-Router anycast addresses forall the subnets to which they are connected. These anycast addresses areobtained directly from the prefix list in the Router DiscoveryAdvertisement message. Other anycast address(es) configured on theinterface of the CE device is/are learned from ND Advertisementmessage(s) from the CE, or it/they is/are statically configured on thePE. Anycast addresses are typically used in point-to-point (e.g., IPlayer-2 interworking) networks.

PE Proxying

The PE may act as a proxy server to the local CE containing the IPv6addresses of the remote CE. To behave as a proxy, the PE intercepts someor all the messages in the IPv6 to link-layer address binding from thelocal CE, and, if required, respond to these messages. These messagesare typically the ND, InvND Solicitation, and Advertisement messages.The messages are intercepted by the local-PE and, thus, may not beforwarded to the remote PE, regardless of the operational state of thecircuit. The ND and InvND messages are typically ICMPv6 packets that areof unicast or limited multicast scope. Since the PE intercepts thesemessages, the PE has to determine the addresses for each ICMPv6 messagefrom the local CE and terminate the messages.

Terminating ND and InvND messages is done in real time within the PE'shardware. This type of real-time processing is burdensome to a PE'spacket processing requirement. In order to minimize the burden on thePE's packet processing requirements, it may be assumed that the ND/InvNDmessages do not have IPv6 Extension Headers. This assumption may be madebecause the ND/InvND messages are of a link-local scope and do notcontain any of the following headers: Hop-by-Hop, Routing, Fragment, andDestination Options Extension Headers.

Distribution of IPv6 Address(es) to Remote-PE

The local-PE distributes the IPv6 addresses to a remote PE in order forthe remote PE to act as a proxy server for the IPv6 addresses of thelocal-CE. The following approach may be taken for advertising andwithdrawing multiple IPv6 addresses:

-   -   In the Label Distribution Protocol (LDP) label mapping message,        the IPv6 or IPv4 mode may be signaled to the remote-PE through        one of two ways:        -   1. A new stack-mode (IPv4, IPv6, dual-stack) Type Length            Value (TLV)        -   2. Reusing one of the existing interface parameters that are            not used by an IP layer 2 interworking circuit. Example            parameters may include: maximum number of concatenated ATM            cells, CEM payload size, and CEM option. Note 2-bits are            needed to signal the stack-mode

Circuit Operation in Dual-Stack Mode

Dual-Stack mode allows the CE devices to run both an IPv4 and IPv6 stackon the same directly connected interface, and the IP layer 2interworking circuit on the PE side may mediate for both types ofaddresses independently. Thus, the PE may maintain a separate circuitstate for IPv4 and IPv6 in the following example states: IPv4connectivity is operationally UP only when both the local and remoteIPv4 addresses are known; IPv6 connectivity is UP only when at least onelocal and one remote IPv6 address is known. Unicast IPv6 packets are notforwarded in one embodiment when the IPv6 connection state isoperationally DOWN even if IPv4 connection state is operationally UP,and vice-versa. A Command Line Interface (CLI) “show” command output maydisplay the operational state of both IPv4 and IPv6 connections, inaddition to the learned local/remote addresses for both.

Note that in an example dual-stack mode of operation, a circuit endpointmay have CE IPv4 addresses statically configured and CE IPv6 addressesdynamically learned (and vice versa).

While this invention has been particularly shown and described withreferences to example embodiments thereof, it will be understood bythose skilled in the art that various changes in form and details may bemade therein without departing from the scope of the inventionencompassed by the appended claims.

For example, example embodiments are described for IPv6. It should beunderstood that other embodiments of the invention may be applied toother and future versions of IP or other network communicationprotocols. In addition, although example embodiments of the presentinvention are described in reference to layer 2 and layer 3communications layers, it should be understood that the same or otherembodiments may be employed in networks using different layer namingconventions, numbering systems, more or fewer lower layers to movelayers 2 and 3 to higher or lower numbered layers, and so forth.

It should be understood that any of the embodiments disclosed herein,such as communicating over network nodes having different link layerprotocols or the flow diagrams of FIGS. 4 and 5, may be implemented inthe form of hardware, firmware, or software. If implemented in software,the software may be processor instructions in any suitable softwarelanguage and stored on any form of computer readable medium. Theprocessor instructions are loaded and executed by a processor, such as ageneral purpose or application specific processor, that, in turn,performs the example embodiments disclosed herein.

1. A network, comprising: first and second layer B network nodescommunicating with each other via a communications path; a first layer Anetwork node communicating with a second layer A network node, eachlayer A network node communicating locally with respective layer Bnetwork nodes using different link layer protocols; and first and seconddiscovery units, exchange units, and reporting units configured tooperate in connection with respective first and second layer B networknodes to determine respective unique identifiers associated with thelayer A network nodes, to exchange the unique identifiers with eachother, and to provide the unique identifier of the distal layer Anetwork node to the respective local layer A network nodes.
 2. Thenetwork of claim 1 wherein the different link layer protocols are IPv6protocols.
 3. The network of claim 1 wherein the first and second layerA network nodes are layer 3 network nodes.
 4. The network of claim 1wherein the first and second layer B network nodes are layer 2 networknodes.
 5. The network of claim 1 wherein the first and second layer Bnetwork nodes are switched network nodes.
 6. The network of claim 1wherein the first and second layer B network nodes are on a point topoint network.
 7. The network of claim 1 further including aninterception unit to intercept a message and the first or seconddiscovery units are configured to send a response based on the message.8. The network of claim 1 wherein the first discovery unit communicateswith the second layer A network node.
 9. The network of claim 1 whereinthe link layer protocols are selected from a group consisting of:Ethernet, VLAN, Frame Relay, or ATM.
 10. A method for communicatingbetween network nodes, comprising: communicating with a first layer Bnetwork node from a second layer B network node; communicating with afirst layer A network node from a second layer A network node, eachlayer A network node communicating locally with respective layer Bnetwork nodes using different link layer protocols; determiningrespective unique identifiers associated with the layer A network nodes;exchanging the unique identifiers; and providing the unique identifierof the distal layer A network node to the respective local layer Anetwork node.
 11. The method of claim 10 wherein the different linklayer protocols are IPv6 protocols.
 12. The method of claim 10 whereinthe first and second layer A network nodes are layer 3 network nodes.13. The method of claim 10 wherein the first and second layer B networknodes are layer 2 network nodes.
 14. The method of claim 10 wherein thefirst and second layer B network nodes are switched network nodes. 15.The method of claim 10 further including intercepting a network messageand sending a response based on the network message.
 16. The method ofclaim 10 further including using the unique identifiers to provide acommunications path between the first layer A network node and thesecond layer A network node.
 17. The method of claim 10 wherein the linklayer protocols are selected a group of consisting of: Ethernet, VLAN,Frame, Relay, or ATM.
 18. A network node, comprising: a discovery unitto determine unique identifiers associated with a local layer A networknode; an exchange unit to exchange the unique identifier with anexchange unit in a layer B network node; and a reporting unit configuredto provide a unique identifier of a distal layer A network node receivedfrom the exchange unit in the layer B network node.